home *** CD-ROM | disk | FTP | other *** search
/ SGI Developer Toolbox 6.1 / SGI Developer Toolbox 6.1 - Disc 4.iso / public / fax / src / util / ps2fax.gs.sh < prev    next >
Linux/UNIX/POSIX Shell Script  |  1994-08-01  |  3KB  |  72 lines

  1. #!/bin/sh
  2. #    $Header: /usr/people/sam/fax/util/RCS/ps2fax.gs.sh,v 1.11 1994/02/28 14:24:42 sam Rel $
  3. #
  4. # FlexFAX Facsimile Software
  5. #
  6. # Copyright (c) 1990, 1991, 1992, 1993, 1994 Sam Leffler
  7. # Copyright (c) 1991, 1992, 1993, 1994 Silicon Graphics, Inc.
  8. # Permission to use, copy, modify, distribute, and sell this software and 
  9. # its documentation for any purpose is hereby granted without fee, provided
  10. # that (i) the above copyright notices and this permission notice appear in
  11. # all copies of the software and related documentation, and (ii) the names of
  12. # Sam Leffler and Silicon Graphics may not be used in any advertising or
  13. # publicity relating to the software without the specific, prior written
  14. # permission of Sam Leffler and Silicon Graphics.
  15. # THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, 
  16. # EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY 
  17. # WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.  
  18. # IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
  19. # ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
  20. # OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
  21. # WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF 
  22. # LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE 
  23. # OF THIS SOFTWARE.
  24. #
  25. # Convert PostScript to facsimile using Ghostscript.
  26. #
  27. # ps2fax [-o output] [-l pagelength] [-w pagewidth]
  28. #    [-r resolution] [-*] file ...
  29. #
  30. # We need to process the arguments to extract the input
  31. # files so that we can prepend a prologue file that sets
  32. # up a non-interactive environment.
  33. #
  34. # NB: this shell script is assumed to be run from the
  35. #     top of the spooling hierarchy -- s.t. the etc directory
  36. #     is present.
  37. #
  38. PS=/usr/local/bin/gs
  39. fil=
  40. out=ps.fax        # default output filename
  41. pagewidth=1728        # standard fax width
  42. pagelength=297        # default to A4 
  43. vres=98            # default to low res
  44. while test $# != 0
  45. do
  46.     case "$1" in
  47.     -o)    shift; out="$1" ;;
  48.     -w) shift; pagewidth="$1" ;;
  49.     -l) shift; pagelength="$1" ;;
  50.     -r)    shift; vres="$1" ;;
  51.     -*)    ;;
  52.     *)    fil="$fil $1" ;;
  53.     esac
  54.     shift
  55. done
  56. case "${pagewidth}x${pagelength}" in
  57. 1728x280|1728x279)        # 279.4mm is actually correct...
  58.     paper=letter;;
  59. *x296|*x297)            # more roundoff problems...
  60.     paper=a4;;
  61. *x364)
  62.     paper=b4;;
  63. *)
  64.     echo "$0: Unsupported page size: $pagewidth x $pagelength";
  65.     exit 1;;
  66. esac
  67. cat $fil | $PS -q -sDEVICE=tiffg3 \
  68.     -sPAPERSIZE=$paper -r204x$vres -dSAFER=true "-sOutputFile=$out" -
  69.